Hledani souboru

Otázka od: Viktor Marek

7. 9. 2002 19:11

Na http://delphi.about.com/library/weekly/aa052300a.htm jsem nasel
komponentu pro hledani souboru s mnoha funkcemi.
Hledani souboru pomoci "FindFirst" jsem realizoval nize uvedenym kodem.

Obe moznosti jsem otestoval na Delphi 5 + WIN95,98,2000,Me a XP - funguji
bez problemu
Treba to pomuze i dalsimu nestastnikovi.

Viktor Marek
viktor@mbox.vol.cz

procedure Najdi(mask:string);
var
  search:TSearchRec;
  verz:string;
  such:string;
begin
  such:=ExtractFileName(mask);
  verz:=ExtractFilePath(mask);
  if verz[length(verz)]<>'\' then verz:=verz+'\';
  if FindFirst(mask,$23,search)=0 then
  begin
    repeat
      form1.ListBox1.Items.Add(verz+search.Name);
      Application.ProcessMessages;
    until FindNext(search)<>0;
  end;
  if FindFirst(verz+'*.*',fadirectory,search)=0 then
  begin
    repeat
      if ((search.Attr and fadirectory)=fadirectory) and
(search.name[1]<>'.') then
      begin
        Najdi(verz+search.name+'\'+such);
      end;
    until FindNext(search) <>0;
    FindClose(search);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  adresar:string;
  maska:string;
begin
  screen.Cursor:=crHourGlass;
  listbox1.Items.Clear;
  adresar:=edit1.Text;
  maska:=edit2.Text;
  if adresar[length(adresar)]<>'\' then adresar:=adresar+'\';
  Najdi(adresar+maska);
  screen.Cursor:=crDefault;
end;


---
Odchozí zpráva neobsahuje viry.
Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
Verze: 6.0.385 / Virová báze: 217 - datum vydání: 4.9.2002